نمایش نتایج: از شماره 1 تا 1 از مجموع 1
Like Tree1نفر پسندیدند
  • 1 ارسال توسط NIIT

موضوع: انواع مرتب سازیها

  1. #1
    مدیر بازنشسته
    تاریخ عضویت
    2011 June
    محل سکونت
    گرگان
    ارسال ها
    1,170
    تشکر
    62
    تشکر شده 1,587 بار در 809 پست
    نوشته های وبلاگ
    49


    آيا اين پست براي شما سودمند بود؟ بله | خیر

    انواع مرتب سازیها

    این پروژه آپولویی بود که برای ترم چهار باید تحویل میدادیم، امیدوارم به دردتون بخوره البته اینم بگم که این مربوط به درس ساختمون داده میشه
    در مورد انواع مرتب سازیها اومدیم الگوریتم مربوط به اونها رو نوشتیم که البته در این پروژه آقایون (صالحیان و حسنپور) خیلی نقش موثری در انجامش داشتن ، جا داره همین جا از این آقایون محترم تشکر دوباره داشته باشم

    کلاس node
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace ProjectNewDecipline1
    {
    class Node
    {
    public int data;
    public Node Rlink;
    public Node LLink;

    public Node(int element)
    {
    data = element;
    Rlink = null;
    LLink = null;
    }
    }
    }


    کلاس List
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace ProjectNewDecipline1
    {
    class CList
    {
    public Node first1 = null;
    public Node first2 = null;
    int counter = 0;
    int counter1 = 0;
    //======================================
    bool IsEmpty1()
    {
    if (first1 == null)
    return true;
    return false;
    }
    //--------------------------------------------
    bool IsEmpty2()
    {
    if (first2 == null)
    return true;
    return false;
    }
    int top = 0;
    //===============================================
    public int InsertData1(int item)
    {
    Node current = first1;
    Node N = new Node(item);

    if (IsEmpty1())
    {
    first1 = N;
    counter++;
    counter1++;
    top++;

    }
    else
    {
    while (current.Rlink != null)
    current = current.Rlink;
    current.Rlink = N;
    counter++;
    counter1++;
    top++;
    }
    return item;
    }
    //----------------------------------------
    public void DeleteForInsertData1(Node pointer)
    {
    Node One = first1;
    while (One != null)
    {
    One = One.Rlink;
    first1 = null;
    first1 = One;
    }
    first1 = null;
    }
    //-------------------------------------------
    public int InsertData2(int item2)
    {
    Node current = first2;
    Node N = new Node(item2);
    if (IsEmpty2())
    {
    first2 = N;
    }
    else
    {
    while (current.Rlink != null)
    current = current.Rlink;
    current.Rlink = N;
    }
    return item2;
    }
    //==============================================
    string CapacityEndHobabi;
    public string Hobabi(Node Pointer)//:),True
    {
    Node Current = first1;
    Node current1 = first1;
    Node check = first1;
    while (counter != 0)
    {
    counter1 = top;
    Current = first1;
    CapacityEndHobabi = "";
    //while (counter1 != 0)
    //{
    while (Current.Rlink != null)
    {
    if (Current.data > Current.Rlink.data)
    {
    int temp;
    temp = Current.data;
    Current.data = Current.Rlink.data;
    Current.Rlink.data = temp;
    }
    CapacityEndHobabi += " " + Current.data;
    Current = Current.Rlink;
    //}
    //counter1--;
    }
    counter--;
    }

    return CapacityEndHobabi.ToString() + " " + Current.data;
    }
    //===================================================================
    string CapacityEndFast;
    int CapacitySmall;
    int changeEnd;
    Node curr1;
    Node curr4; Node f1;
    public string Fast(Node Pointer)
    {
    Node curr2 = first1;
    Node curr3;
    int CapacityBig;
    int Change;
    Node curNode = first1;
    Node curMin= first1;
    Node curMax = first1;
    int min = curMin.data;
    Node chekmin = first1;
    while (curMin != null)
    {
    if (min > curMin.data)
    {
    min = curMin.data;
    }
    curMin = curMin.Rlink;
    }
    int max = curMax.data;
    Node checkmax = first1;
    while (curMax != null)
    {
    if (max < curMax.data)
    {
    max = curMax.data;
    checkmax = curMax;
    }
    curMax = curMax.Rlink;
    }
    ////-----------------------------
    //Node f1 = first1;
    //while (f1.Rlink != null)
    //{
    // f1 = f1.Rlink;
    //}
    //if (f1.data == max)
    // return "false";
    ////-------------------------------
    while (true)
    {
    curr1 = first1;
    if (max == first1.data)
    {
    CapacityBig = first1.data;
    }
    else
    {
    while (first1.data > curr1.Rlink.data)
    {
    curr1 = curr1.Rlink;
    }
    curr1 = curr1.Rlink;//////زمانی که گره محور بزرگترین مقدار قرار میگیرد دچار خطا میشود
    CapacityBig = curr1.data;
    }
    while (curr2.Rlink != null)
    {
    curr2.Rlink.LLink = curr2;
    curr2 = curr2.Rlink;
    }
    curr4 = curr2;
    curr2 = first1;

    if (curr4.data < first1.data)
    {
    CapacitySmall = curr4.data;
    }
    else
    {
    while (curr4.data > first1.data)
    {
    curr4 = curr4.LLink;
    CapacitySmall = curr4.data;
    }
    }
    chekmin = first1;
    while (chekmin.data != min)
    {
    chekmin = chekmin.Rlink;
    }
    if (chekmin.Rlink == null)
    {
    if (first1.data == max)
    break;
    }
    else if (chekmin.Rlink.data == max)
    {
    break;
    }
    Change = curr1.data;
    curr1.data = curr4.data;
    curr4.data = Change;
    chekmin = first1;

    //---------------
    if (CheckNodeAboutFast(first1))
    break;
    //-------------

    while (chekmin.data != min)
    {
    chekmin = chekmin.Rlink;
    }
    if (chekmin.Rlink == null)
    {
    if (first1.data == max)
    break;
    }
    else if (chekmin.Rlink.data == max)
    {
    break;
    }
    }
    changeEnd = curr2.data;
    curr2.data = chekmin.data;
    chekmin.data = changeEnd;

    while (curr2.data != curr1.data)
    {
    Selection(first1);
    curr2 = curr2.Rlink;
    }
    Node Curs1 = curr1.Rlink;
    Node Curs2 = curr1.Rlink;
    while (Curs1 != null)
    {
    Selection(Curs2);
    Curs1 = Curs1.Rlink;
    }


    curr3 = first1;
    while (curr3.Rlink != null)
    {
    CapacityEndFast += " " + curr3.data;
    curr3 = curr3.Rlink;
    }
    return CapacityEndFast + " " + curr3.data;
    }
    //-----------------------------------------------------
    Node CurMax1;
    public bool CheckNodeAboutFast(Node pointer)
    {
    CurMax1 = first1;
    int max = CurMax1.data;
    Node checkmax = first1;
    while (CurMax1 != null)
    {
    if (max < CurMax1.data)
    {
    max = CurMax1.data;
    checkmax = CurMax1;
    }
    CurMax1 = CurMax1.Rlink;
    }
    //-----------------------------
    Node f1 = first1;
    while (f1.Rlink != null)
    {
    f1 = f1.Rlink;
    }
    if (f1.data == max)
    return true;
    return false;
    //-------------------------------
    }
    //==================================================================================================================
    string CapacityMove;
    Node CurrMove;
    public string Darj(int item, Node Pointer1)//True,:)
    {
    Node curr1 = first1;
    Node N = new Node(item);
    if (IsEmpty1())
    {
    first1 = N;
    }
    else
    {
    if (N.data < first1.data)
    {
    N.Rlink = first1;
    first1.LLink = N;
    first1 = N;
    }
    else
    {
    while (curr1.Rlink != null)
    {
    curr1 = curr1.Rlink;
    }
    if (N.data > curr1.data)
    {
    curr1.Rlink = N;
    N.LLink = curr1;
    }
    else
    {
    Node CurCheck = first1;
    while (CurCheck.Rlink != null)
    {
    if (N.data > CurCheck.data && N.data < CurCheck.Rlink.data)
    {
    N.Rlink = CurCheck.Rlink;
    N.LLink = CurCheck;
    CurCheck.Rlink = N;
    CurCheck.Rlink.LLink = N;
    }

    CurCheck = CurCheck.Rlink;
    }
    }
    }
    }
    CurrMove = first1;
    if (CurrMove != null)
    {
    CapacityMove = "";
    while (CurrMove != null)
    {
    CapacityMove += " " + CurrMove.data;
    CurrMove = CurrMove.Rlink;
    }
    }

    return CapacityMove;
    }
    //==========================================================================================================
    string CE;
    public string Edgham(Node Pointer1, Node Pointer2)//،True,:)
    {
    Node curr1 = first1;
    Node curr2 = first2;

    while (curr1 != null && curr2 != null)
    {
    if (curr2.data < curr1.data)
    {
    CE += " " + curr2.data;
    curr2 = curr2.Rlink;
    first2 = curr2;
    }
    else
    {
    CE += " " + curr1.data;
    curr1 = curr1.Rlink;
    first1 = curr1;
    }
    }

    if (curr2 != null)
    {
    curr2 = first2;
    while (curr2.Rlink != null)
    {
    CE += " " + curr2.data;
    curr2 = curr2.Rlink;
    }
    CE += " " + curr2.data;
    }

    if (curr1 != null)
    {
    while (curr1 != null)
    {
    CE += " " + curr1.data;
    curr1 = curr1.Rlink;
    }
    CE += " " + curr1.data;
    }
    return CE;
    }
    //====================================================================================
    public string CE1;
    public string Selection(Node Pointer)//:),True
    {
    Node curr2 = first1;
    Node curr1 = first1;
    Node CheckNode;
    Node checkMin;

    while (curr1 != null)
    {
    CheckNode = curr1;
    checkMin = CheckNode;
    int min = curr2.data;

    for (int i = 0; i < counter; i++)
    {
    if (min > CheckNode.data)
    {
    min = CheckNode.data;
    checkMin = CheckNode;
    }
    if (CheckNode.Rlink != null)
    {
    CheckNode = CheckNode.Rlink;
    }
    }
    int change = curr2.data;
    curr2.data = checkMin.data;
    checkMin.data = change;
    curr2 = curr2.Rlink;
    curr1 = curr1.Rlink;

    }
    Node SeleNode = first1;
    while (SeleNode.Rlink != null)
    {
    CE1 += " " + SeleNode.data;
    SeleNode = SeleNode.Rlink;
    }
    return CE1 + " " + SeleNode.data;
    }
    //===========================================================================
    string chMove;
    int span;
    public string Shell(Node Pointer)
    {

    Node curr1 = first1;
    Node curr2 = first1;
    int y, change, i = 0;
    int capacity = counter / 2;
    while (i < (counter / 2))
    {
    span = capacity;
    curr1 = first1;
    curr2 = first1;
    for (int a = 0; a < span; a++)
    {
    curr2 = curr2.Rlink;

    }
    while (curr2 != null)
    {
    //y = curr2.data;
    if (curr1.data > curr2.data)
    {
    change = curr1.data;
    curr1.data = curr2.data;
    curr2.data = change;
    }
    curr1 = curr1.Rlink;
    curr2 = curr2.Rlink;
    }
    capacity--;
    i++;
    }


    Node curMove = first1;
    while (curMove.Rlink != null)
    {
    chMove += " " + curMove.data;
    curMove = curMove.Rlink;
    }
    return chMove + " " + curMove.data;

    }
    //===============================

    public string CE11;
    public string SortForBinarySearch(Node Pointer)
    {

    Node curr2 = first1;
    Node curr1 = first1;
    Node CheckNode;
    Node checkMin;

    while (curr1 != null)
    {
    CheckNode = curr1;
    checkMin = CheckNode;
    int min = curr2.data;

    for (int i = 0; i < counter; i++)
    {
    if (min > CheckNode.data)
    {
    min = CheckNode.data;
    checkMin = CheckNode;
    }
    if (CheckNode.Rlink != null)
    {
    CheckNode = CheckNode.Rlink;

    }
    }
    int change = curr2.data;
    curr2.data = checkMin.data;
    checkMin.data = change;
    curr2 = curr2.Rlink;
    curr1 = curr1.Rlink;

    }
    Node SeleNode = first1;
    while (SeleNode.Rlink != null)
    {
    CE11 += " " + SeleNode.data;
    SeleNode = SeleNode.Rlink;
    }
    return CE11 + " " + SeleNode.data;
    }
    //-----------------------------------------------
    public int BinarySearch(int item, Node Pointer)
    {
    Node midnode, max = first1;
    int low, mid, high;
    low = 0;
    high = counter - 1;
    while (low <= high)
    {
    midnode = first1;
    mid = (low + high) / 2;
    for (int j = 0; j < mid; j++)
    {
    midnode = midnode.Rlink;
    }
    if (midnode.data == item)
    return mid;
    else if (midnode.data < item)
    low = mid + 1;
    else
    high = mid - 1;
    }
    return -1;

    }
    }
    }


    فرم باینری سرچ:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormBinarySearch : Form
    {
    public FormBinarySearch()
    {
    InitializeComponent();
    }
    CList MyList = new CList();
    private void txt_EnterData_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar=='\r')
    {
    lbl_ShowEnterData.Text += " " + MyList.InsertData1(Convert.ToInt32(txt_EnterData.Text));
    txt_EnterData.Text = "";
    }
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void btn_ClickBinarySearch_Click(object sender, EventArgs e)
    {
    try
    {
    lbl_ShowChangeEnterData.Text += " " + MyList.SortForBinarySearch(MyList.first1);

    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void FormBinarySearch_Load(object sender, EventArgs e)
    {
    lbl_ShowEnterData.Text = "";
    lbl_ShowChangeEnterData.Text = "";
    }

    private void btn_ClickBinarySearch_Click_1(object sender, EventArgs e)
    {
    try
    {
    int capacityResult;
    capacityResult = MyList.BinarySearch(Convert.ToInt32(txt_EnterDataAboutSearch.Text), MyList.first1);
    if (capacityResult == -1)
    MessageBox.Show("no");
    else
    MessageBox.Show(" yes.... " + " " + " index " + (capacityResult + 1));
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }
    }
    }


    فرم ادغام:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormEdgham : Form
    {
    public FormEdgham()
    {
    InitializeComponent();
    }
    CList MyList = new CList();
    private void txt_EnterDataOne_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar == '\r')
    {
    lbl_ShowEnterDataOne.Text += " " + MyList.InsertData1(Convert.ToInt32(txt_EnterDataOne.Text));
    txt_EnterDataOne.Text = "";
    }
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void txt_EnterDataTwo_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar == '\r')
    {
    lbl_ShowEnterDataTwo.Text += " " + MyList.InsertData2(Convert.ToInt32(txt_EnterDataTwo.Text));
    txt_EnterDataTwo.Text = "";
    }
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void btn_ClickShowEdgham_Click(object sender, EventArgs e)
    {
    lbl_ShowChangeInformation.Text = "";
    try
    {
    lbl_ShowChangeInformation.Text += " " + MyList.Edgham(MyList.first1, MyList.first2);
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void FormEdgham_Load(object sender, EventArgs e)
    {
    lbl_ShowChangeInformation.Text = "";
    lbl_ShowEnterDataOne.Text = "";
    lbl_ShowEnterDataTwo.Text = "";
    }
    }
    }


    فرم fast
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormFast : Form
    {
    public FormFast()
    {
    InitializeComponent();
    }
    CList MyList = new CList();
    //==================================================================
    private void btn_ClickFast_Click(object sender, EventArgs e)
    {
    lbl_ShowChangeFast.Text = "";
    try
    {
    lbl_ShowChangeFast.Text += " " + MyList.Fast(MyList.first1);
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void txt_EnterDataFast_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar == '\r')
    {
    lbl_ShowEnterData.Text += " " + MyList.InsertData1(Convert.ToInt32(txt_EnterDataFast.Text));
    txt_EnterDataFast.Text = "";
    }
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void FormFast_Load(object sender, EventArgs e)
    {
    lbl_ShowChangeFast.Text = "";
    lbl_ShowEnterData.Text = "";
    }
    //==============================================================================================
    }
    }


    فرم حبابی:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormHobabi : Form
    {
    public FormHobabi()
    {
    InitializeComponent();
    }

    CList MyList = new CList();
    //================================================================================
    private void btn_ClickShowHobabi_Click(object sender, EventArgs e)
    {
    lbl_ShowEnterChangeData.Text = "";
    try
    {
    lbl_ShowEnterChangeData.Text = " ChangeInformation : " + " " + MyList.Hobabi(MyList.first1);
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }
    private void txt_DataHobabi_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar == '\r')
    {
    lbl_ShowEnterData.Text += " " + MyList.InsertData1(Convert.ToInt32(txt_DataHobabi.Text));
    txt_DataHobabi.Text = "";
    }
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void FormHobabi_Load(object sender, EventArgs e)
    {
    lbl_ShowEnterChangeData.Text = "";
    lbl_ShowEnterData.Text = "";
    }
    //===============================================================================================================
    }
    }


    فرم insert
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormInsert : Form
    {
    public FormInsert()
    {
    InitializeComponent();
    }
    CList MyList = new CList();
    private void btn_ClickShowInsert_Click(object sender, EventArgs e)
    {
    lbl_ShowChangeEnterData.Text = "";
    try
    {
    lbl_ShowChangeEnterData.Text += "\n" + " ChangeInformation : , " + MyList.Darj(Convert.ToInt32(txt_EnterData.Text), MyList.first1);
    txt_EnterData.Text = "";
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void FormInsert_Load(object sender, EventArgs e)
    {
    lbl_ShowChangeEnterData.Text = "";
    }
    }
    }


    فرم selection
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormSelection : Form
    {
    public FormSelection()
    {
    InitializeComponent();
    }

    private void FormSelection_Load(object sender, EventArgs e)
    {
    lbl_ShowChangeEnterData.Text = "";
    lbl_ShowEnterData.Text = "";
    }
    CList MyList = new CList();
    private void txt_EnterData_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar=='\r')
    {
    lbl_ShowEnterData.Text += " " + MyList.InsertData1(Convert.ToInt32(txt_EnterData.Text));
    txt_EnterData.Text = "";
    }

    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void btn_ClickSelection_Click(object sender, EventArgs e)
    {
    try
    {
    lbl_ShowChangeEnterData.Text += "SelectionNode : " + " " + MyList.Selection(MyList.first1);
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }
    }
    }


    فرم shell
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace ProjectNewDecipline1
    {
    public partial class FormShell : Form
    {
    public FormShell()
    {
    InitializeComponent();
    }
    CList MyList = new CList();
    private void btn_ClickShowShell_Click(object sender, EventArgs e)
    {
    try
    {
    lbl_ShowEnterChangeData.Text +="ShowChangeData : "+ " " + MyList.Shell(MyList.first1);
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void txt_EnterData_KeyPress(object sender, KeyPressEventArgs e)
    {
    try
    {
    if (e.KeyChar=='\r')
    {
    lbl_ShowEnterData.Text += " " + MyList.InsertData1(Convert.ToInt32(txt_EnterData.Text));
    txt_EnterData.Text = "";
    }
    }
    catch (Exception ecp)
    {
    MessageBox.Show(ecp.Message);
    }
    }

    private void FormShell_Load(object sender, EventArgs e)
    {
    lbl_ShowEnterData.Text = "";
    lbl_ShowEnterChangeData.Text = "";
    }
    }
    }


    فقط چون پروژه جا نشد مجبور شدم فقط فرمهای مربوط به مرتب سازیها رو بذارم

    اما این برای دانلود کامل فایله، خواستین دانلود بفرمایین
    http://s2.picofile.com/file/71757606...line1.zip.html
    سوالی بود ، بفرمایین
    بااحترام

    موضوعات مشابه:
    ویرایش توسط NIIT : 5th November 2011 در ساعت 09:55 PM
    Hossein این نویسه را میپسندد.
    آرامش محصول تفکر نیست! آرامش هنر نیندیشیدن به انبوه مسائلیست که ارزش فکر کردن ندارد...

 

 

کاربران برچسب خورده در این موضوع

کلمات کلیدی این موضوع

علاقه مندی ها (Bookmarks)

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  


Powered by vBulletin
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0
Persian Language By Ustmb.ir
این انجمن کاملا مستقل بوده و هیچ ارتباطی با دانشگاه علوم و فنون مازندران و مسئولان آن ندارد..این انجمن و تمامی محتوای تولید شده در آن توسط دانشجویان فعلی و فارغ التحصیل ادوار گذشته این دانشگاه برای استفاده دانشجویان جدید این دانشگاه و جامعه دانشگاهی کشور فراهم شده است.لطفا برای اطلاعات بیشتر در رابطه با ماهیت انجمن با مدیریت انجمن ارتباط برقرار کنید
ساعت 05:54 PM بر حسب GMT +4 می باشد.